home *** CD-ROM | disk | FTP | other *** search
/ Winzipper / Winzipper_ISO.iso / nt4.0 server / DRVLIB.NIC / SMC32 / OEMSETUP.INF < prev    next >
Encoding:
INI File  |  1996-07-31  |  20.1 KB  |  623 lines

  1. ;
  2. ; 03/23/94 v1.00a
  3. ;
  4. ; Windows NT 3.1 .inf file
  5. ;
  6. ; SMC EISA EtherCard Elite32 setup for 82M32 adapter
  7. ;
  8.  
  9. [Identification]
  10.     OptionType = NetAdapter
  11. [PlatformsSupported]
  12.     EISA
  13.     "Jazz-Internal Bus"
  14. [Options]
  15.     SMC8232
  16. [FileConstants]
  17. UtilityInf      = "UTILITY.INF"
  18. subroutineinf   = "SUBROUTN.INF"
  19. SoftwareType    = "driver"
  20. Exit_Code       = 0
  21. NetEventDLL     = "%SystemRoot%\System32\netevent.dll"
  22. IoLogMsgDLL     = "%SystemRoot%\System32\IoLogMsg.dll"
  23. ;NE3200_1BYTE   = 511034
  24. ;SMCEBM_1BYTE   = 8430413
  25. SMC8232_1BYTE   = 8430413
  26.  
  27. Manufacturer    = "SMC"
  28. ProductMajorVersion     = "1"
  29. ProductMinorVersion     = "0"
  30. ProductVersion  = $(ProductMajorVersion)"."$(ProductMinorVersion)
  31. ProductSoftwareName     = "SMC8232"
  32. ProductSoftwareImagePath = "\SystemRoot\System32\drivers\smc8232n.sys"
  33. NetRuleSoftwareType     = "smc8232Sys ndisDriver smc8232Driver"
  34. NetRuleSoftwareUse      = $(SoftwareType)
  35. NetRuleSoftwareBindForm = """smc8232Sys"" yes no container"
  36. NetRuleSoftwareClass    = {"smc8232Driver basic"}
  37. NetRuleSoftwareBindable = {"smc8232Driver smc8232Adapter non exclusive 100"}
  38. ProductHardwareName     = "SMC8232"
  39. NetRuleHardwareType     = "smc8232 smc8232Adapter"
  40. NetRuleHardwareBindForm = " yes yes container"
  41. NetRuleHardwareClass    = {"smc8232Adapter basic"}
  42. ProductKeyName  = $(!NTN_SoftwareBase)"\"$(Manufacturer)"\"$(ProductSoftwareName)"\CurrentVersion"
  43. ParamKeyName    = $(!NTN_ServiceBase)"\"$(ProductHardwareName)"\Parameters"
  44. [GeneralConstants]
  45. from      = ""
  46. to        = ""
  47. ExitCodeOk     = 0
  48. ExitCodeCancel = 1
  49. ExitCodeFatal  = 2
  50. KeyNull         = ""
  51. MAXIMUM_ALLOWED   = 33554432
  52. RegistryErrorIndex = NO_ERROR
  53. KeyProduct      = ""
  54. KeyParameters   = ""
  55. TRUE            = 1
  56. FALSE           = 0
  57. NoTitle            = 0
  58. ExitState   = "Active"
  59. OldVersionExisted = $(FALSE)
  60. DriverPath      = $(!STF_NTPATH)\drivers
  61. [date]
  62.     Now = {} ? $(!LIBHANDLE) GetSystemDate
  63. [Identify]
  64.     read-syms Identification
  65.     set Status     = STATUS_SUCCESSFUL
  66.     set Identifier = $(OptionType)
  67.     set Media      = #("Source Media Descriptions", 99, 1)
  68.     Return $(Status) $(Identifier) $(Media)
  69. [ReturnOptions]
  70.     set Status        = STATUS_FAILED
  71.     set OptionList     = {}
  72.     set OptionTextList = {}
  73.     set LanguageList = ^(LanguagesSupported, 1)
  74.     Ifcontains(i) $($0) in $(LanguageList)
  75.     ifstr(i) $($1) == ""
  76.        goto returnoptions
  77.     endif
  78.     set PlatformList = ^(PlatformsSupported, 1)
  79.     Ifcontains(i) $($1) in $(PlatformList)
  80.        goto returnoptions
  81.     else
  82.        set Status = STATUS_NOTSUPPORTED
  83.        goto finish_ReturnOptions
  84.     endif
  85.     else
  86.     set Status = STATUS_NOLANGUAGE
  87.     goto finish_ReturnOptions
  88.     endif
  89. returnoptions = +
  90.     set OptionList     = ^(Options, 1)
  91.     set OptionTextList = ^(OptionsText$($0), 1)
  92.     set Status         = STATUS_SUCCESSFUL
  93. finish_ReturnOptions = +
  94.     Return $(Status) $(OptionList) $(OptionTextList)
  95. [InstallOption]
  96.     set Option   = $($1)
  97.     set SrcDir   = $($2)
  98.     set AddCopy  = $($3)
  99.     set DoCopy   = $($4)
  100.     set DoConfig = $($5)
  101.     set LanguageList = ^(LanguagesSupported, 1)
  102.     Ifcontains(i) $($0) NOT-IN $(LanguageList)
  103.     Return STATUS_NOLANGUAGE
  104.     endif
  105.     Debug-Output "OEMNADNE.INF: STF_CWDIR is: "$(!STF_CWDIR)
  106.     Debug-Output "OEMNADNE.INF: STF_LANGUAGE is: "$(!STF_LANGUAGE)
  107.     set-subst LF = "\n"
  108.     read-syms GeneralConstants
  109.     read-syms FileConstants
  110.     read-syms DialogConstants$(!STF_LANGUAGE)
  111.     ifstr(i) $(!NTN_Origination) == "NCPA"
  112.     set Continue = $(OK)
  113.     endif
  114.     read-syms FileConstants$(!STF_LANGUAGE)
  115.     detect date
  116.     set-title  $(FunctionTitle)
  117.     set to   = Begin
  118.     set from = Begin
  119.     set CommonStatus = STATUS_SUCCESSFUL
  120.     EndWait
  121. Begin = +
  122.     Ifstr(i) $(!NTN_InstallMode) == deinstall
  123.     set StartLabel = removeadapter
  124.     else-Ifstr(i) $(!NTN_InstallMode) == Update
  125.     set StartLabel = UpgradeSoftware
  126.     else-Ifstr(i) $(!NTN_InstallMode) == bind
  127.     set StartLabel = bindingadapter
  128.     else-Ifstr(i) $(!NTN_InstallMode) == configure
  129.     set CommonStatus = STATUS_REBOOT
  130.     Ifstr(i) $(ProductKeyName) == $(!NTN_RegBase)
  131.         Debug-Output "Cannot configure the SMC EBM driver software."
  132.         Shell $(UtilityInf),RegistryErrorString,CANNOT_CONFIGURE_SOFTWARE
  133.     else
  134.         Debug-Output "Cannot configure the SMC EBM adapter card."
  135.         Shell $(UtilityInf),RegistryErrorString,CANNOT_CONFIGURE_HARDWARE
  136.     endif
  137.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  138.         Debug-Output "ShellCode error: cannot get an error string."
  139.         goto ShellCodeError
  140.     endif
  141.     set Error = $($R0)
  142.     set from = end
  143.     set to = end
  144.     goto nonfatalinfo
  145.     else
  146.     set StartLabel = installadapter
  147.     set OEM_ABANDON_OPTIONS = {}
  148.     set OEM_ABANDON_SOFTWARE = FALSE
  149.     set OEM_ABANDON_ON = TRUE
  150.     endif
  151.     set from = $(fatal)
  152.     set to = $(fatal)
  153.     goto $(StartLabel)
  154. installadapter = +
  155.     OpenRegKey $(!REG_H_LOCAL) "" $(ProductKeyName) $(MAXIMUM_ALLOWED) KeyProduct
  156.     Ifstr $(KeyProduct) != $(KeyNull)
  157.     CloseRegKey $(KeyProduct)
  158.     ifstr(i) !(NTN_RegBase) == $(ProductKeyName)
  159.        Shell $(UtilityInf), VerExistedDlg, $(ProductSoftwareTitle),+
  160.            $(ProductVersion)
  161.        ifint $($ShellCode) != $(!SHELL_CODE_OK)
  162.            Debug-Output "ShellCode error: cannot get an error string."
  163.            goto ShellCodeError
  164.        endif
  165.        goto end
  166.     else
  167.        Shell $(UtilityInf), CardExistedDlg
  168.        ifint $($ShellCode) != $(!SHELL_CODE_OK)
  169.            Debug-Output "ShellCode error: cannot get an error string."
  170.            goto ShellCodeError
  171.        endif
  172.        ifstr(i) $($R1) != "OK"
  173.            set CommonStatus = STATUS_USERCANCEL
  174.            goto end
  175.        endif
  176.        set OldVersionExisted = $(TRUE)
  177.     endif
  178.     endif
  179.     CloseRegKey $(KeyProduct)
  180.     goto nextstep
  181. configureadapter = +
  182.     set Error = "Configure: Sorry, not yet implemented."
  183.     goto fatal
  184. nextstep = +
  185.     StartWait
  186.     Shell $(UtilityInf), EISAFindBus, $(SMC8232_1BYTE)
  187.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  188.     goto ShellCodeError
  189.     endif
  190.     ifstr $($R0) != "NO_ERROR"
  191.     set Error = $($R0)
  192.     goto fatal
  193.     endif
  194.     ifstr(i) $($R1) == {}
  195.     set Error = $(CANNOT_FIND_ANY_CARD)
  196.     set CommonStatus = STATUS_USERCANCEL
  197.     set from = "end"
  198.     goto nonfatal
  199.     endif
  200.     set AdapterList = $($R1)
  201.     ifint $(OldVersionExisted) == $(FALSE)
  202.     ifstr(i) $(!NTN_InstallMode) == "install"
  203.        Ifstr(i) $(DoCopy) == "YES"
  204.           Shell $(UtilityInf), DoAskSource, $(!STF_CWDDIR), $(SrcDir) YES
  205.           Ifint $($ShellCode) != $(!SHELL_CODE_OK)
  206.           Goto ShellCodeError
  207.           Else-Ifstr(i) $($R0) == STATUS_FAILED
  208.           Shell $(UtilityInf) RegistryErrorString "ASK_SOURCE_FAIL"
  209.           ifint $($ShellCode) != $(!SHELL_CODE_OK)
  210.               goto ShellCodeError
  211.           endif
  212.           set Error = $($R0)
  213.           Goto fatal
  214.           Else-Ifstr(i) $($R0) == STATUS_USERCANCEL
  215.           Goto successful
  216.           Endif
  217.           Set SrcDir = $($R1)
  218.        Endif
  219.        install "Install-Option"
  220.        ifstr(i) $(STF_INSTALL_OUTCOME) != STF_SUCCESS
  221.           Shell $(UtilityInf) RegistryErrorString "UNABLE_COPY_FILE"
  222.           ifint $($ShellCode) != $(!SHELL_CODE_OK)
  223.           goto ShellCodeError
  224.           endif
  225.           set Error = $($R0)
  226.           goto fatal
  227.        endif
  228.     endif
  229.     Shell $(UtilityInf), AddSoftwareComponent, $(Manufacturer), +
  230.         $(ProductSoftwareName), +
  231.         $(ProductSoftwareName), +
  232.         $(ProductSoftwareTitle), $(STF_CONTEXTINFNAME), +
  233.         $(ProductSoftwareImagePath), "kernel", "NDIS", {}, "",+
  234.         $(NetEventDLL)
  235.     Set OEM_ABANDON_SOFTWARE = TRUE
  236.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  237.         goto ShellCodeError
  238.     endif
  239.     set RegistryErrorIndex = $($R0)
  240.     Ifstr(i) $(RegistryErrorIndex) != "NO_ERROR"
  241.         EndWait
  242.         CloseRegKey $($R1)
  243.         CloseRegKey $($R2)
  244.         CloseRegKey $($R3)
  245.         CloseRegKey $($R4)
  246.         CloseRegKey $($R5)
  247.         goto fatalregistry
  248.     endif
  249.     set SoftProductKey      = $($R1)
  250.     Set SoftNetRuleKey      = $($R2)
  251.     Set SoftServiceKey      = $($R3)
  252.     Set SoftParameterKey    = $($R4)
  253.     Set SoftLinkageKey      = $($R5)
  254.     set NewValueList = {{SoftwareType,$(NoTitle),$(!REG_VT_SZ),$(SoftwareType)},+
  255.                {MajorVersion,$(NoTitle),$(!REG_VT_DWORD),$(ProductMajorVersion)},+
  256.                {MinorVersion,$(NoTitle),$(!REG_VT_DWORD),$(ProductMinorVersion)},+
  257.                {Title,$(NoTitle),$(!REG_VT_SZ),$(ProductSoftwareTitle)},+
  258.                {Description,$(NoTitle),$(!REG_VT_SZ),$(ProductSoftwareDescription)},+
  259.                {ServiceName,$(NoTitle),$(!REG_VT_SZ),$(ProductSoftwareName)},+
  260.                {InstallDate,$(NoTitle),$(!REG_VT_DWORD),*($(Now),1)}}
  261.     Shell  $(UtilityInf), AddValueList, $(SoftProductKey), $(NewValueList)
  262.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  263.         goto ShellCodeError
  264.     endif
  265.     set RegistryErrorIndex = $($R0)
  266.     Ifstr(i) $(RegistryErrorIndex) != "NO_ERROR"
  267.         EndWait
  268.         CloseRegKey $(SoftProductKey)
  269.         CloseRegKey $(SoftNetRuleKey)
  270.         CloseRegKey $(SoftServiceKey)
  271.         CloseRegKey $(SoftParameterKey)
  272.         CloseRegKey $(SoftLinkageKey)
  273.         goto fatalregistry
  274.     endif
  275.     set NewValueList = {{type,$(NoTitle),$(!REG_VT_SZ),$(NetRuleSoftwareType)},+
  276.                 {use,$(NoTitle),$(!REG_VT_SZ),$(NetRuleSoftwareUse)}, +
  277.                 {bindform,$(NoTitle),$(!REG_VT_SZ),$(NetRuleSoftwareBindForm)}, +
  278.                 {class,$(NoTitle),$(!REG_VT_MULTI_SZ),$(NetRuleSoftwareClass)}, +
  279.                 {bindable,$(NoTitle),$(!REG_VT_MULTI_SZ),$(NetRuleSoftwareBindable)}, +
  280.                 {InfOption,$(NoTitle),$(!REG_VT_SZ),$(Option)}}
  281.     Shell  $(UtilityInf), AddValueList, $(SoftNetRuleKey), $(NewValueList)
  282.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  283.         goto ShellCodeError
  284.     endif
  285.     set RegistryErrorIndex = $($R0)
  286.     CloseRegKey $(SoftProductKey)
  287.     CloseRegKey $(SoftNetRuleKey)
  288.     CloseRegKey $(SoftServiceKey)
  289.     CloseRegKey $(SoftParameterKey)
  290.     CloseRegKey $(SoftLinkageKey)
  291.     Ifstr(i) $(RegistryErrorIndex) != "NO_ERROR"
  292.         EndWait
  293.         goto fatalregistry
  294.     endif
  295.     endif
  296.     ForListDo $(AdapterList)
  297.     set BusNum = *($($),1)
  298.     set SlotNum = *($($),2)
  299.     Debug-Output $(BusNum)
  300.     Debug-Output $(SlotNum)
  301.     Shell $(UtilityInf), IsNetCardAlreadyInstalled, $(BusNum), +
  302.         $(SlotNum), $(ProductHardwareDescription), $(ProductHardwareName)
  303.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  304.         goto ShellCodeError
  305.     endif
  306.     ifstr $($R0) != "NO_ERROR"
  307.         set Error = $($R0)
  308.         goto fatal
  309.     endif
  310.     ifstr(i) $($R1) != "YES"
  311.         Shell $(UtilityInf), AddHardwareComponent, $(ProductHardwareName),$(STF_CONTEXTINFNAME),$(ProductKeyName)
  312.         ifint $($R4) != -1
  313.             Set OEM_ABANDON_OPTIONS = >($(OEM_ABANDON_OPTIONS), $(!NTN_SoftwareBase)"\Microsoft\Windows NT\CurrentVersion\NetworkCards\"$($R4))
  314.         endif
  315.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  316.             goto ShellCodeError
  317.         endif
  318.         set RegistryErrorIndex = $($R0)
  319.         Ifstr(i) $(RegistryErrorIndex) != "NO_ERROR"
  320.             EndWait
  321.             CloseRegKey $($R1)
  322.             CloseRegKey $($R2)
  323.             CloseRegKey $($R3)
  324.             goto fatalregistry
  325.         endif
  326.         Set HardNetCardKey      = $($R1)
  327.         Set HardNetRuleKey      = $($R2)
  328.         Set HardParameterKey    = $($R3)
  329.         set AdapterNumber       = $($R4)
  330.         set NewValueList = {{Manufacturer,$(NoTitle),$(!REG_VT_SZ),$(Manufacturer)},+
  331.                    {Title,$(NoTitle),$(!REG_VT_SZ),"["$($R4)"] "$(ProductHardwareTitle)},+
  332.                    {Description,$(NoTitle),$(!REG_VT_SZ),$(ProductHardwareDescription)},+
  333.                    {ProductName,$(NoTitle),$(!REG_VT_SZ),$(ProductHardwareName)},+
  334.                    {ServiceName,$(NoTitle),$(!REG_VT_SZ),$($R5)},+
  335.                    {InstallDate,$(NoTitle),$(!REG_VT_DWORD),*($(Now),1)}}
  336.         Shell  $(UtilityInf), AddValueList, $(HardNetCardKey), $(NewValueList)
  337.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  338.             goto ShellCodeError
  339.         endif
  340.         set NewValueList = {{BusNumber,$(NoTitle),$(!REG_VT_DWORD),$(BusNum)},+
  341.                    {BusType,$(NoTitle),$(!REG_VT_DWORD),2},+
  342.                    {MediaType,$(NoTitle),$(!REG_VT_DWORD),1},+
  343.                    {EisaCompressedId,$(NoTitle),$(!REG_VT_DWORD),$(SMC8232_1BYTE)},+
  344.                    {SlotNumber,$(NoTitle),$(!REG_VT_DWORD),$(SlotNum)}}
  345.         Shell  $(UtilityInf), AddValueList, $(HardParameterKey), $(NewValueList)
  346.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  347.             goto ShellCodeError
  348.         endif
  349.          set TempProdName = """"$(ProductHardwareName)$(AdapterNumber)""""
  350.          set TempBindForm = $(TempProdName)$(NetRuleHardwareBindForm)
  351.          set NewValueList = {{type,$(NoTitle),$(!REG_VT_SZ),$(NetRuleHardwareType)},+
  352.                      {bindform,$(NoTitle),$(!REG_VT_SZ),$(TempBindForm)}, +
  353.                      {class,$(NoTitle),$(!REG_VT_MULTI_SZ),$(NetRuleHardwareClass)}, +
  354.                      {InfOption,$(NoTitle),$(!REG_VT_SZ),$(Option)}}
  355.         Shell  $(UtilityInf), AddValueList, $(HardNetRuleKey), $(NewValueList)
  356.         CloseRegKey $(HardNetCardKey)
  357.         CloseRegKey $(HardNetRuleKey)
  358.         CloseRegKey $(HardParameterKey)
  359.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  360.             goto ShellCodeError
  361.         endif
  362.     endif
  363.     EndForListDo
  364.     goto writeparameters
  365. writeparameters = +
  366.     EndWait
  367.     goto successful
  368. bindingadapter =+
  369.     set Error = "Binding: Sorry, not yet implemented."
  370.     goto fatal
  371. removeadapter = +
  372.     Ifstr(i) $(ProductKeyName) == $(!NTN_RegBase)
  373.     Shell $(UtilityInf), RemoveSoftwareComponent, $(Manufacturer), +
  374.         $(ProductSoftwareName)
  375.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  376.         Debug-Output "ShellCode error"
  377.         goto ShellCodeError
  378.     endif
  379.     set RegistryErrorIndex = $($R0)
  380.     Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  381.         goto fatalregistry
  382.     endif
  383.     else
  384.     Shell $(UtilityInf), RemoveHardwareComponent, $(Manufacturer), +
  385.         $(ProductSoftwareName), $(!NTN_RegBase)
  386.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  387.         Debug-Output "ShellCode error"
  388.         goto ShellCodeError
  389.     endif
  390.     set RegistryErrorIndex = $($R0)
  391.     Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  392.         goto fatalregistry
  393.     endif
  394.     endif
  395.     goto end
  396. UpgradeSoftware = +
  397.     ifstr(i) $(ProductKeyName) == $(!NTN_RegBase)
  398.     OpenRegKey $(!REG_H_LOCAL) "" $(ProductKeyName) $(MAXIMUM_ALLOWED) KeyProduct
  399.     Ifstr $(KeyProduct) != $(KeyNull)
  400.         GetRegValue $(KeyProduct),"MajorVersion", VersionInfo
  401.         set Version = *($(VersionInfo), 4)
  402.         Shell $(UtilityInf), GetInfFileNameFromRegistry, $(KeyProduct)
  403.         ifint $($ShellCode) != $(!SHELL_CODE_OK)
  404.         Debug-Output "ShellCode error"
  405.         goto ShellCodeError
  406.         endif
  407.         set !UG_Filename = $($R0)
  408.         ifstr(i) $(!UG_Filename) != ""
  409.         install "Install-Update"
  410.         ifstr(i) $(STF_INSTALL_OUTCOME) != STF_SUCCESS
  411.             goto fatal
  412.         endif
  413.         endif
  414.         SetRegValue $(KeyProduct) {MajorVersion,$(NoTitle),$(!REG_VT_SZ),$(ProductMajorVersion)}
  415.         SetRegValue $(KeyProduct) {MinorVersion,$(NoTitle),$(!REG_VT_SZ),$(ProductMinorVersion)}
  416.         ifint $(Version) != $(ProductVersion)
  417.         endif
  418.         CloseRegKey $(KeyProduct)
  419.     else
  420.         goto fatalregistry
  421.     endif
  422.     else
  423.     OpenRegKey $(!REG_H_LOCAL) "" $(!NTN_RegBase) +
  424.           $(MAXIMUM_ALLOWED) NetworkCardKey
  425.     Ifstr(i) $(NetworkCardKey) != $(KeyNull)
  426.         GetRegValue $(NetworkCardKey),"ServiceName", ServiceNameInfo
  427.         set ServiceName = *($(ServiceNameInfo), 4)
  428.         OpenRegKey $(NetworkCardKey) "" "NetRules" +
  429.         $(MAXIMUM_ALLOWED) NetRuleKey
  430.         Ifstr(i) $(NetRuleKey) != $(KeyNull)
  431.         else
  432.         goto fatalregistry
  433.         endif
  434.         CloseRegKey $(NetRules)
  435.         CloseRegKey $(NetworkCardKey)
  436.     else
  437.         goto fatalregistry
  438.     endif
  439.     OpenRegKey $(!REG_H_LOCAL) "" +
  440.           $(!NTN_ServiceBase)"\"$(ServiceName) +
  441.           $(MAXIMUM_ALLOWED) ServiceKey
  442.     Ifstr(i) $(ServiceKey) != $(KeyNull)
  443.         CloseRegKey $(ServiceKey)
  444.     else
  445.         goto fatalregistry
  446.     endif
  447.     endif
  448.     goto end
  449. successful = +
  450.     goto end
  451. abandon = +
  452.     ForListDo $(OEM_ABANDON_OPTIONS)
  453.     Shell $(UtilityInf), RemoveHardwareComponent, $(Manufacturer), +
  454.         $(ProductSoftwareName), $($)
  455.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  456.         Debug-Output "ShellCode error"
  457.         goto ShellCodeError
  458.     endif
  459.     set RegistryErrorIndex = $($R0)
  460.     Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  461.         goto fatalregistry
  462.     endif
  463.     EndForListDo
  464.     Ifstr(i) $(OEM_ABANDON_SOFTWARE) == TRUE
  465.     Shell $(UtilityInf), RemoveSoftwareComponent, $(Manufacturer), +
  466.         $(ProductSoftwareName), FALSE
  467.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  468.         Debug-Output "ShellCode error"
  469.         goto ShellCodeError
  470.     endif
  471.     set RegistryErrorIndex = $($R0)
  472.     Ifstr(i) $(RegistryErrorIndex) != NO_ERROR
  473.         goto fatalregistry
  474.     endif
  475.     endif
  476.     goto end
  477. warning = +
  478.     Shell $(subroutineinf) SetupMessage, $(!STF_LANGUAGE), "WARNING", $(Error)
  479.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  480.     goto ShellCodeError
  481.     endif
  482.     ifstr(i) $($R1) == "OK"
  483.     goto $(to)
  484.     else-ifstr(i) $($R1) == "CANCEL"
  485.     goto $(from)
  486.     else
  487.     goto "end"
  488.     endif
  489. nonfatalinfo = +
  490.     Set CommonStatus = STATUS_USERCANCEL
  491.     Set Severity = STATUS
  492.     goto nonfatalmsg
  493. nonfatal = +
  494.     Set Severity = NONFATAL
  495.     goto nonfatalmsg
  496. nonfatalmsg = +
  497.     ifstr(i) $(Error) == ""
  498.     Set Severity = NONFATAL
  499.     Shell $(UtilityInf) RegistryErrorString "SETUP_FAIL"
  500.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  501.         goto ShellCodeError
  502.     endif
  503.     set Error = $($R0)
  504.     endif
  505.     Shell $(subroutineinf) SetupMessage, $(!STF_LANGUAGE), $(Severity), $(Error)
  506.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  507.     goto ShellCodeError
  508.     endif
  509.     ifstr(i) $($R1) == "OK"
  510.     goto $(from)
  511.     else
  512.     goto "end"
  513.     endif
  514. fatalregistry = +
  515.     Shell $(UtilityInf) RegistryErrorString $(RegistryErrorIndex)
  516.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  517.     goto ShellCodeError
  518.     endif
  519.     set Error = $($R0)
  520.     goto fatal
  521. fatal = +
  522.     ifstr(i) $(Error) == ""
  523.     Shell $(UtilityInf) RegistryErrorString "SETUP_FAIL"
  524.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  525.         goto ShellCodeError
  526.     endif
  527.     set Error = $($R0)
  528.     endif
  529.     Shell $(subroutineinf) SetupMessage, $(!STF_LANGUAGE), "FATAL", $(Error)
  530.     ifint $($ShellCode) != $(!SHELL_CODE_OK)
  531.     goto ShellCodeError
  532.     endif
  533.     goto setfailed
  534. ShellCodeError = +
  535.     set DlgType      = "MessageBox"
  536.     set STF_MB_TITLE = $(ShellCodeErrorTitle)
  537.     set STF_MB_TEXT  = $(ShellCodeErrorText)
  538.     set STF_MB_TYPE  = 1
  539.     set STF_MB_ICON  = 3
  540.     set STF_MB_DEF   = 1
  541.     ui start "Error Message"
  542.     goto setfailed
  543. setfailed = +
  544.     set CommonStatus = STATUS_FAILED
  545.     ifstr(i) $(OEM_ABANDON_ON) == TRUE
  546.     set OEM_ABANDON_ON = FALSE
  547.     goto abandon
  548.     endif
  549.     goto end
  550. end = +
  551.     goto term
  552. term = +
  553.     Return $(CommonStatus)
  554. [Install-Option]
  555.     set STF_VITAL = ""
  556.     ifstr(i) $(AddCopy) == "YES"
  557.     AddSectionFilesToCopyList Files-$(Option) $(SrcDir) $(!STF_WINDOWSSYSPATH)\drivers
  558.     endif
  559.     ifstr(i) $(DoCopy) == "YES"
  560.        set !STF_NCPA_FLUSH_COPYLIST = TRUE
  561.        CopyFilesInCopyList
  562.     endif
  563.     ifstr(i) $(DoConfig) == "YES"
  564.     endif
  565.     Exit
  566. [Install-Update]
  567.    set STF_VITAL        = ""
  568.    set STF_OVERWRITE    = "VERIFYSOURCEOLDER"
  569.    AddSectionFilesToCopyList Files-$(Option) $(SrcDir) $(!STF_WINDOWSSYSPATH)\drivers
  570.    AddSectionFilesToCopyList Files-Inf $(SrcDir) $(!STF_WINDOWSSYSPATH)
  571.    set !STF_NCPA_FLUSH_COPYLIST = TRUE
  572.    CopyFilesInCopyList
  573.    exit
  574. [Source Media Descriptions]
  575. ;    1  = "Windows NT Setup Disk #1"  , TAGFILE = disk1
  576. ;    2  = "Windows NT Setup CD-ROM Disk"  , TAGFILE = disk2
  577.      99 = "SMC SUPER DISK " 
  578.  
  579. [Signature]
  580.     FileType = MICROSOFT_DRVLIB_FILE
  581. [GetSignature]
  582.     read-syms Signature
  583.     return $(FileType)
  584.  
  585. [ProductType]
  586. STF_PRODUCT  = Winnt
  587. STF_PLATFORM = I386
  588. [Files-Inf]
  589. 99,     oemsetup.inf,    SIZE=1000,     RENAME=$(!UG_Filename)
  590. [Files-SMC8232]
  591. 99,SMC8232N.SYS , SIZE=38400
  592. [LanguagesSupported]
  593.     ENG
  594. [OptionsTextENG]
  595.     SMC8232     = "SMC EISA EtherCard Elite32 Ultra (82M32)"
  596. [FileConstantsENG]
  597. ProCaption   = "Windows NT Setup"
  598. ProCancel    = "Cancel"
  599. ProCancelMsg = "Windows NT Networking is not correctly installed.  "+
  600.            "Are you sure you want to cancel copying files?"
  601. ProCancelCap = "Network Setup Message"
  602. ProText1     = "Copying:"
  603. ProText2     = "To:"
  604. FunctionTitle   = "SMC Adapter Card Setup"
  605. ProductSoftwareDescription      = "SMC EtherCard Elite32 Driver"
  606. ProductHardwareDescription      = "SMC EISA EtherCard Elite32 Ultra (82M32)"
  607. CANNOT_FIND_ANY_CARD            = "Network card is not present in the system"
  608. ProductSoftwareTitle    = "SMC EtherCard Elite32 Driver"
  609. ProductHardwareTitle    = "SMC EISA EtherCard Elite32 Ultra (82M32)"
  610. ShellCodeErrorTitle     = "Error: "$(FunctionTitle)
  611. ShellCodeErrorText      = "Shell Code Error."
  612. [DialogConstantsENG]
  613. Help        = "&Help"
  614. Exit        = "Cancel"
  615. OK          = "OK"
  616. HelpContext = ""
  617. Continue    = "Continue"
  618. Cancel      = "Cancel"
  619. [FileDependentDlgENG]
  620.  
  621.  
  622.  
  623.